1. Field of the Invention
The present invention relates to a data processing method and an apparatus for the same, and more particularly, to a data processing method which processes electronic industries alliance-775 on screen display (EIA-775 OSD) graphic data, which is received from the outside based on IEEE 1394 standards, by using a combined software/hardware method.
2. Description of the Related Art
FIG. 1 shows a configuration of a conventional data processing apparatus which employs a software method.
EIA-775 OSD graphic data, which is received from the outside through a 1394 link 10, is transmitted by a peripheral component interconnect (PCI) interface 11 to a standard PCI system bus. The EIA-775 OSD graphic data, which has been transmitted to the PCI bus, is recorded in an SDRAM which is a CPU memory 13 by way of a peripheral component interconnect/accelerated graphics port (PCI/AGP) system bus interface 12. Data having a variable length defined as a frame in EIA-775 is sequentially recorded in the CPU memory 13. Each frame consists of subframes whose number is different depending on the OSD data format.
Each subframe is configured with a Set_OSD_pixel_format, a 4_bit_OSD_data, an 8_bit_OSD_data, an Uncompressedxe2x80x9416_bit_data, a Fill_region_with_constant and a clear_OSD. A configuration of each frame is determined by an OSD_layout of a Set_OSD_pixel_format.
For example, in the case of a Set_OSD_pixel_format for 4-bit color data defined in EIA-775, not only a pure OSD pixel data but also various control data such as a bit number per pixel, a pixel type and a color look-up-table (CLUT) are recorded. A CPU 14 processes these data and CLUT data are stored in the CPU memory 13.
A serially received 4_bit_OSD_data includes location and size data of a rectangle to be displayed and real pixel data. The CPU 14 forms a 16-bit OSD pixel by using the pixel data and CLUT and performs color-matrix conversion of these data to record the converted data in the CPU memory 13. Also, the CPU 14 calculates a destination address of a system memory 16, the destination address corresponding to a location value and reads out the OSD data from the CPU memory 13 to store the read data at the destination address of the system memory 16 through the PCI/AGP system bus interface 12, the PCI interface 11 and a memory management unit (MMU) 15. A graphic processor 17 reads out final data after it has passed through the MMU 15, mixes it with video data and generates graphic data mixed with the video data.
FIG. 2 is a block diagram showing a configuration of a conventional data processing apparatus which employs a hardware method.
EIA-775 OSD graphic data provided through a 1394 link 20 from the outside is processed by special hardware, that is, a parser 21, without the assistance of a CPU 25. As the EIA-775 OSD graphic data does not pass through a PCI interface 22 and PCI/AGP system bus interface 23, it does not have any influence on system bandwidth. After the data is processed as above, it is stored directly in a system memory 27 via an MMU 26. A graphic processor 28 reads final data processed by the MMU 26 from the system memory 27, mixes it with video data and generates graphic data mixed with the video data.
The graphic data processing based on the software method illustrated by FIG. 1, requires a wide PCI system bandwidth because the EIA-775 OSD graphic data is processed by the CPU 14 through the PCI interface 11. In other words, in the data processing, the PCI bus serves as a two-way path to and from the CPU 14, resulting in the degradation of system performance.
To prevent the degradation of system performance, system operating frequency must be increased or the system bus must be widened. However, raising the system operating frequency inevitably requires the use of a lot of gate devices to increase the data processing speed. A lot of gate devices occupy a wide area of a chip and cause a long test time and design time because synchronization of operation times is difficult.
Processing the graphic data in the hardware method as shown in FIG. 2 can increase the data processing speed and does not have a negative influence on the system bandwidth because the method does not use the PCI bus which is a system bus. However, since this method analyzes and processes the first two 32 bits of data of Set_OSD_pixel_format, which is complicated, in a hardware manner, additional gates are necessary to configure the hardware and it is difficult to design and to debug it. Furthermore, while a good error correction capability is possible using a software approach, the hardware approach is not good at error correction.
It is a first object of the present invention to provide a data processing apparatus capable of processing by a combined software/hardware method EIA-775 OSD graphic data which is received from the outside based on IEEE 1394 standards.
It is a second object of the present invention to provide a combined software/hardware data processing method capable of processing EIA-775 OSD graphic data which is received from the outside based on IEEE 1394 standards.
To accomplish the first object, there is provided a data processing apparatus using a combined software/hardware method, including first data processing means, in response to an interrupt control signal, for analyzing predetermined data among graphic data received from the outside based on IEEE 1394 standards and processing the same to output control data, second data processing means for outputting the interrupt control signal to process the predetermined data when the graphic data is provided from the outside based on IEEE 1394 standards, and for calculating a destination address and the size of graphic data excluding the predetermined data to be output according to the control data, and graphic processing means for mixing the graphic data, of which the destination address and the size are calculated with video data.
To accomplish the second object, there is provided a data processing method using a combined software/hardware method, including the steps of generating an interrupt signal to output control data by analyzing predetermined data among graphic data received from the outside based on IEEE 1394 standards and processing the same, calculating a destination address and the size of graphic data received from the outside based on IEEE 1394 standards according to the control data, and storing the size of the graphic data at the calculated destination address of a memory.